package com.pet.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import lombok.Data;

/**
 * 宠物申请人信息表
 * @TableName pet_applcation
 */
@TableName(value ="pet_applcation")
@Data
public class PetApplcation implements Serializable {
    /**
     * id
     */
    @TableId(value = "applcation_id", type = IdType.AUTO)
    private Integer applcation_id;

    /**
     * 姓名
     */
    @TableField(value = "ap_name")
    private String ap_name;

    /**
     * 性别
     */
    @TableField(value = "ap_sex")
    private String ap_sex;

    /**
     * 年龄
     */
    @TableField(value = "ap_age")
    private Integer ap_age;

    /**
     * 养宠经验
     */
    @TableField(value = "ap_experience")
    private String ap_experience;

    /**
     * 宠物
     */
    @TableField(value = "ap_pet")
    private String ap_pet;

    /**
     * 联系方式
     */
    @TableField(value = "ap_phone")
    private String ap_phone;

    /**
     * 婚姻
     */
    @TableField(value = "ap_married")
    private String ap_married;

    /**
     * 收入
     */
    @TableField(value = "ap_income")
    private String ap_income;

    /**
     * 职业
     */
    @TableField(value = "ap_profession")
    private String ap_profession;

    /**
     * 住址
     */
    @TableField(value = "ap_address")
    private String ap_address;

    /**
     * 领养理由
     */
    @TableField(value = "ap_reason")
    private String ap_reason;

    /**
     * 状态
     */
    @TableField(value = "ap_state")
    private String ap_state;

    /**
     * 动物id
     */
    @TableField(value = "animal_id")
    private Integer animal_id;

    /**
     * 用户id
     */
    @TableField(value = "user_id")
    private Integer user_id;

    /**
     * 删除状态：0未删除，1已删除
     */
    @TableField(value = "ap_delete")
    private String ap_delete;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        PetApplcation other = (PetApplcation) that;
        return (this.getApplcation_id() == null ? other.getApplcation_id() == null : this.getApplcation_id().equals(other.getApplcation_id()))
            && (this.getAp_name() == null ? other.getAp_name() == null : this.getAp_name().equals(other.getAp_name()))
            && (this.getAp_sex() == null ? other.getAp_sex() == null : this.getAp_sex().equals(other.getAp_sex()))
            && (this.getAp_age() == null ? other.getAp_age() == null : this.getAp_age().equals(other.getAp_age()))
            && (this.getAp_experience() == null ? other.getAp_experience() == null : this.getAp_experience().equals(other.getAp_experience()))
            && (this.getAp_pet() == null ? other.getAp_pet() == null : this.getAp_pet().equals(other.getAp_pet()))
            && (this.getAp_phone() == null ? other.getAp_phone() == null : this.getAp_phone().equals(other.getAp_phone()))
            && (this.getAp_married() == null ? other.getAp_married() == null : this.getAp_married().equals(other.getAp_married()))
            && (this.getAp_income() == null ? other.getAp_income() == null : this.getAp_income().equals(other.getAp_income()))
            && (this.getAp_profession() == null ? other.getAp_profession() == null : this.getAp_profession().equals(other.getAp_profession()))
            && (this.getAp_address() == null ? other.getAp_address() == null : this.getAp_address().equals(other.getAp_address()))
            && (this.getAp_reason() == null ? other.getAp_reason() == null : this.getAp_reason().equals(other.getAp_reason()))
            && (this.getAp_state() == null ? other.getAp_state() == null : this.getAp_state().equals(other.getAp_state()))
            && (this.getAnimal_id() == null ? other.getAnimal_id() == null : this.getAnimal_id().equals(other.getAnimal_id()))
            && (this.getUser_id() == null ? other.getUser_id() == null : this.getUser_id().equals(other.getUser_id()))
            && (this.getAp_delete() == null ? other.getAp_delete() == null : this.getAp_delete().equals(other.getAp_delete()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getApplcation_id() == null) ? 0 : getApplcation_id().hashCode());
        result = prime * result + ((getAp_name() == null) ? 0 : getAp_name().hashCode());
        result = prime * result + ((getAp_sex() == null) ? 0 : getAp_sex().hashCode());
        result = prime * result + ((getAp_age() == null) ? 0 : getAp_age().hashCode());
        result = prime * result + ((getAp_experience() == null) ? 0 : getAp_experience().hashCode());
        result = prime * result + ((getAp_pet() == null) ? 0 : getAp_pet().hashCode());
        result = prime * result + ((getAp_phone() == null) ? 0 : getAp_phone().hashCode());
        result = prime * result + ((getAp_married() == null) ? 0 : getAp_married().hashCode());
        result = prime * result + ((getAp_income() == null) ? 0 : getAp_income().hashCode());
        result = prime * result + ((getAp_profession() == null) ? 0 : getAp_profession().hashCode());
        result = prime * result + ((getAp_address() == null) ? 0 : getAp_address().hashCode());
        result = prime * result + ((getAp_reason() == null) ? 0 : getAp_reason().hashCode());
        result = prime * result + ((getAp_state() == null) ? 0 : getAp_state().hashCode());
        result = prime * result + ((getAnimal_id() == null) ? 0 : getAnimal_id().hashCode());
        result = prime * result + ((getUser_id() == null) ? 0 : getUser_id().hashCode());
        result = prime * result + ((getAp_delete() == null) ? 0 : getAp_delete().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", applcation_id=").append(applcation_id);
        sb.append(", ap_name=").append(ap_name);
        sb.append(", ap_sex=").append(ap_sex);
        sb.append(", ap_age=").append(ap_age);
        sb.append(", ap_experience=").append(ap_experience);
        sb.append(", ap_pet=").append(ap_pet);
        sb.append(", ap_phone=").append(ap_phone);
        sb.append(", ap_married=").append(ap_married);
        sb.append(", ap_income=").append(ap_income);
        sb.append(", ap_profession=").append(ap_profession);
        sb.append(", ap_address=").append(ap_address);
        sb.append(", ap_reason=").append(ap_reason);
        sb.append(", ap_state=").append(ap_state);
        sb.append(", animal_id=").append(animal_id);
        sb.append(", user_id=").append(user_id);
        sb.append(", ap_delete=").append(ap_delete);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}